<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>主页</title>
<!-- http://localhost:8080/atcrowdfunding02-admin-webui/test/ssm.html -->
<base href="http://${pageContext.request.serverName }:${pageContext.request.serverPort }${pageContext.request.contextPath}/"/>
<script type="text/javascript" src="jquery/jquery-2.1.1.min.js"></script>
<script type="text/javascript" src="layer/layer.js"></script>
<script type="text/javascript">
	$(function() {
		$("#btn1").click(function() {
			alert("来了");
/* 			$.get();
			$.post(); */
			//上面这两个哥们有缺陷，所以我们不要他们
			$.ajax({
				"url":"send/array/one.html",	//请求目标资源的地址
				"type":"post",				//请求方式
				"data":{					//要发送的数据
					"array":[5,8,12]
				},
				"dataType":"text",
				"success":function(respons){//服务器端处理请求成功后调用的回调函数
					alert(respons);
				},
				"error":function(respons){  //服务器端处理请求失败后调用的回调函数
					alert(respons);
				}
			});
		});
	});
	
	
	$(function() {
		$("#btn2").click(function() {
			alert("btn2");
/* 			$.get();
			$.post(); */
			//上面这两个哥们有缺陷，所以我们不要他们
			$.ajax({
				"url":"send/array/two.html",	//请求目标资源的地址
				"type":"post",				//请求方式
				"data":{					//要发送的数据
					"array[0]":5,
					"array[1]":8,
					"array[2]":2
				},
				"dataType":"text",
				"success":function(respons){//服务器端处理请求成功后调用的回调函数
					alert(respons);
				},
				"error":function(respons){  //服务器端处理请求失败后调用的回调函数
					alert(respons);
				}
			});
		});
	});
	
	$(function() {
		$("#btn3").click(function() {
			alert("btn3");
			
			//准备好要发送到服务器端的数组
			var  array=[5,8,12];
			console.log(array);
			
			//将json数组转换为json字符串
			var requestBody=JSON.stringify(array);
			console.log(requestBody.length);
			
			$.ajax({
				"url":"send/array/three.html",	//请求目标资源的地址
				"type":"post",				    //请求方式
				"data":requestBody,			    //请求体
				"contentType":"application/json;charset=UTF-8",//设置请求体的内容类型
				"dataType":"text",			
				"success":function(respons){//服务器端处理请求成功后调用的回调函数
					alert(respons);
				},
				"error":function(respons){  //服务器端处理请求失败后调用的回调函数
					alert(respons);
				}
			});
		});
	});
	/* 
	private List<Subject> subject;
	private Map<String,String> map; 
	*/
	$(function() {
		$("#btn4").click(function() {
			alert("btn4");
			
			//准备好要发送到服务器端的数组
			var  student={
				 "stuId":5,
				 "stuName":"tom",
				 "address":{
					 "province":"湖南省",
					 "city":"长沙市",
					 "street":"青山街道"
				 },
				 "subject":[
					 {
						"subjectName":"语文",
						"subjectScore":"99"
					 },{
						"subjectName":"数学",
						"subjectScore":"100"
					}
				 ],
				 "map":{
					 "k1":"v1",
					 "k2":"v2"
				 }
			};
			
			//将json数组转换为json字符串
			var requestBody=JSON.stringify(student);

			$.ajax({
				"url":"send/compose/object.html",	//请求目标资源的地址
				"type":"post",				    //请求方式
				"data":requestBody,			    //请求体
				"contentType":"application/json;charset=UTF-8",//设置请求体的内容类型
				"dataType":"text",			
				"success":function(respons){//服务器端处理请求成功后调用的回调函数
					alert(respons);
				},
				"error":function(respons){  //服务器端处理请求失败后调用的回调函数
					alert(respons);
				}
			});
		});
	});
	$(function() {
		$("#btn5").click(function() {
			alert("btn5");
			
			//准备好要发送到服务器端的数组
			var  student={
				 "stuId":5,
				 "stuName":"tom",
				 "address":{
					 "province":"湖南省",
					 "city":"长沙市",
					 "street":"青山街道"
				 },
				 "subject":[
					 {
						"subjectName":"语文",
						"subjectScore":"99"
					 },{
						"subjectName":"数学",
						"subjectScore":"100"
					}
				 ],
				 "map":{
					 "k1":"v1",
					 "k2":"v2"
				 }
			};
			
			//将json数组转换为json字符串
			var requestBody=JSON.stringify(student);
			
			$.ajax({
				"url":"send/compose/objectPowerful.json",	//请求目标资源的地址
				"type":"post",				    //请求方式
				"data":requestBody,			    //请求体
				"contentType":"application/json;charset=UTF-8",//设置请求体的内容类型
				"dataType":"json",			
				"success":function(respons){//服务器端处理请求成功后调用的回调函数
					alert(respons);
				},
				"error":function(respons){  //服务器端处理请求失败后调用的回调函数
					alert(respons);
				}
			});
		});
	});
	
	$(function() {
		$("#btn6").click(function() {
			alert("来了");
/* 			$.get();
			$.post(); */
			//上面这两个哥们有缺陷，所以我们不要他们
			$.ajax({
				"url":"test/ssmCrowdUtil.html",	//请求目标资源的地址
				"type":"post",				//请求方式
				"data":{					//要发送的数据
					"测试":"是什么请求呢"
				},
				"dataType":"text",
				"success":function(respons){//服务器端处理请求成功后调用的回调函数
					alert(respons);
				},
				"error":function(respons){  //服务器端处理请求失败后调用的回调函数
					alert(respons);
				}
			});
		});
	});

	
	$(function() {
		$("#btn7").click(function() {
			alert("btn7");
			
			//准备好要发送到服务器端的数组
			var  student={
				 "stuId":5,
				 "stuName":"tom",
				 "address":{
					 "province":"湖南省",
					 "city":"长沙市",
					 "street":"青山街道"
				 },
				 "subject":[
					 {
						"subjectName":"语文",
						"subjectScore":"99"
					 },{
						"subjectName":"数学",
						"subjectScore":"100"
					}
				 ],
				 "map":{
					 "k1":"v1",
					 "k2":"v2"
				 }
			};
			
			//将json数组转换为json字符串
			var requestBody=JSON.stringify(student);
			
			$.ajax({
				"url":"test/ssmCrowdExceptionResolver.json",	//请求目标资源的地址
				"type":"post",				    //请求方式
				"data":requestBody,			    //请求体
				"contentType":"application/json;charset=UTF-8",//设置请求体的内容类型
				"dataType":"json",			
				"success":function(respons){//服务器端处理请求成功后调用的回调函数
					alert(respons);
				},
				"error":function(respons){  //服务器端处理请求失败后调用的回调函数
					alert(respons);
				}
			});
		});
	});
	
	$(function() {
		$("#btn8").click(function() {
			alert("btn8");
			$.ajax({
				"url":"test/ssmCrowdExceptionMath.html",	//请求目标资源的地址
				"type":"post",				//请求方式
				"data":{					//要发送的数据
					"number":100
				},
				"dataType":"text",
				"success":function(respons){//服务器端处理请求成功后调用的回调函数
					alert(respons);
				},
				"error":function(respons){  //服务器端处理请求失败后调用的回调函数
					alert(respons);
				}
			});
		});
	});	

	$(function() {
		$("#btn9").click(function() {
			layer.msg("layer的弹窗");
		});
	});
	
</script>

</head>
<body>
	<a href="test/ssm.html">测试SSM整合环境</a>
	<br/>
	<br/>
	<button id="btn1">1-Send[5,8,12]One</button>
	<br/>
	<br/>
	<button id="btn2">2-Send[5,8,12]Two</button>
	<br/>
	<br/>
	<button id="btn3">3-Send[5,8,12]Three——优雅且完完美 </button>
	<br/>
	<br/>
	<button id="btn4">4-Send — 复杂对象 —— 工作中经常这样用</button>
	<br/>
	<br/>
	<button id="btn5">5-Send — 终极 ——ResultEntity封装，方便前端返回数据类型统一 —— 前后端分离中经常这样用</button>
	<br/>
	<br/>
	<a href="test/ssmException.html">01_05环境搭建-异常映射 —— 测试异常类</a>
	<br/>
	<br/>
	<a href="test/ssmCrowdUtil.html">普通请求（点我返回false）</a>
	<br/>
	<br/>
	<button id="btn6">6-ajax请求（点我返回true）</button>
	<br>
	<br>
	<button id="btn7">7-测试 基于注解的异常映射（空指针异常）</button>
	<br>
	<br>
	<button id="btn8">8-测试 基于注解的异常映射（数学异常）</button>
	
	<a href="test/ssmCrowdExceptionMath2.html">9-测试 基于注解的异常映射（空指针）</a>
	<br>
	<a href="test/ssmCrowdExceptionMath3.html">10-测试 </a>
	<br>
	<br>
	<button id="btn9">测试btn9 Layer的弹出效果</button>
</body>
</html>






